// VI_DCPower_Chroma_52914.h: interface for the CVI_DCPower_Chroma_52914 class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_VI_DCPOWER_CHROMA_52914_H__0ED60FB7_AFE2_47B0_9752_7D544BFB6808__INCLUDED_)
#define AFX_VI_DCPOWER_CHROMA_52914_H__0ED60FB7_AFE2_47B0_9752_7D544BFB6808__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "SignalMaker.h"
#include "chr52912.h"
#include"string"

class CVI_DCPower_Chroma_52914  : public ISignalMaker 
{
public:
	CVI_DCPower_Chroma_52914();
	virtual ~CVI_DCPower_Chroma_52914();
	virtual double OutputSignal(std::string &ItemName,std::string& SignalType,
				float PromiseValue,std::string &Channel,COMMSG* errMsg);
	virtual void StopOutput();

	// IUnknown member function
	virtual HRESULT __stdcall QueryInterface(const IID& iid, void **ppv) ;
	virtual ULONG	__stdcall AddRef() ; 
	virtual ULONG	__stdcall Release() ;

private:
//	ViChar  m_Channel[8];
	ViInt32 m_MeasMode;
	ViReal64 m_Range;
	ViChar   m_ResourceName[256];
	ViSession vi;
	int	  m_Ref ;
	ViChar   m_ErrMsg[512];
};

#endif // !defined(AFX_VI_DCPOWER_CHROMA_52914_H__0ED60FB7_AFE2_47B0_9752_7D544BFB6808__INCLUDED_)
